package com.work.studio.net.api;


import com.work.studio.entitys.AttendanceStatisticsEntity;
import com.work.studio.entitys.BaseApiEntity;
import com.work.studio.entitys.CustomerEntity;
import com.work.studio.entitys.CustomerSignEntity;
import com.work.studio.entitys.CustomerVisitRntity;
import com.work.studio.entitys.DailyFinishEntity;
import com.work.studio.entitys.RankingEntity;
import com.work.studio.entitys.UpdateAppEntity;

import java.util.List;

import io.reactivex.Observable;

public interface NetProvider {


    /**
     * 考勤缺勤统计
     * @return
     */
    Observable<BaseApiEntity<AttendanceStatisticsEntity>> requestToday();

    /**
     * 销售日报完成率
     * @return
     */
    Observable<BaseApiEntity<DailyFinishEntity>> requestFinish();

    /**
     * 客户拜访次数日统计
     * @return
     */
    Observable<BaseApiEntity<List<CustomerVisitRntity>>> requestVisitor();

    /**
     * 获取某月份客户拜访客户排行榜
     * @return
     */
    Observable<BaseApiEntity<List<RankingEntity>>> requestRanking();

    /**获取某日客户实时拜访
     *
     * @return
     */
    Observable<BaseApiEntity<CustomerSignEntity>> requestCustomerRecycle();

    /**
     *
     * @return
     */
    Observable<BaseApiEntity<CustomerSignEntity>> requestMapViewDatas();

    /**
     * 版本检测
     * @return
     */
    Observable<BaseApiEntity<UpdateAppEntity>> requestVersion();

    Observable<BaseApiEntity<CustomerEntity>> requestCustomer();
}
